<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>axios拦截器</title>
    <script crossorigin="anonymous" src="https://cdn.bootcss.com/axios/0.19.2/axios.min.js"></script>
</head>
<body>
    <script>
        // 拦截器是一些函数 
        /*
            请求拦截器
                对请求的内容以及参数做处理与检查
            响应拦截器
                对响应的结果进行预处理
        */
        //添加请求拦截器  config 配置对象
        axios.interceptors.request.use(config => {
            console.log('请求拦截器 - 成功 - 1');
            return config;
        }, error => {
            console.error('请求拦截器 - 失败 - 1');
            return Promise.reject(error);
        });

        //后添加的请求拦截器会先执行
        axios.interceptors.request.use(config => {
            console.log('请求拦截器 - 成功 - 2');
            return config;
            // return Promise.reject('Error');
        }, error => {
            console.error('请求拦截器 - 失败 -2');
            return Promise.reject(error);
        });

        //添加响应拦截器 response
        axios.interceptors.response.use(response => {
            console.log('响应拦截器 - 成功 - 1');
            return response;
        }, error => {
            console.error('响应拦截器 - 失败 -1 ');
            return Promise.reject(error);
        });

        axios.interceptors.response.use(response => {
            console.log('响应拦截器 - 成功 - 2');
            return response;
        }, error => {
            console.error('响应拦截器 - 失败 - 2');
            return Promise.reject(error);
        });

        //发送请求
        axios({
            method:'GET',
            url: 'http://127.0.0.1/server'
        }).then(response => {
            console.log(response);
        }, error => {
            console.error(error);
        });
    </script>
</body>
</html>